package yl.hs.bmipfull.service.finance;

import yl.hs.bmipfull.pojo.finance.ShipFreightSettleDetailEntity;
import yl.hs.bmipfull.pojo.production.ProductShipOrderEntity;
import yl.hs.bmipfull.viewmodels.PageQuery;
import yl.hs.bmipfull.viewmodels.PageResult;
import yl.hs.bmipfull.viewmodels.SubmitModel;

import java.text.ParseException;
import java.util.List;
import java.util.Map;

/*
 * IShipFreightSettleService
 * @category
 * @author 谢景广
 * @date 2022-08-03
 */
public interface IShipFreightSettleService extends IFinanceService{
    /**
     * 根据分页数据获取结算单的分页查询数据
     * @param query 查询条件集合
     * @param rowNum 分页大小，当分页大小为0获取的结算单为临时数据
     * @param page 分页页码，当分页大小为0时，页码失效
     * @return 分页数据集
     */
    PageResult<Map<String,Object>> queryPage(PageQuery query, int rowNum, Integer page) throws Exception;

    Map<String, Object> querySettleDetailsBySettleSN(String settleSN);

    List<Map<String,Object>> queryTempSettleDetails(String driverSN, String productCateSN, String startDate, String endDate) throws ParseException;

    Integer cancelSettle(String settleSN);

    Integer saveSettle(SubmitModel submitModel) throws Exception;

    List<ProductShipOrderEntity> querySettleOrdersBySettleSN(String settleSN);
}
